#include <stdio.h>
#include <stdlib.h>
 // 定义链表节点结构体
struct Node {
    int data;
    struct Node* next;
};
 // 插入节点到链表尾部
void insert(struct Node** head, int data) {
    // 创建新节点
    struct Node* newNode = (struct Node*)malloc(sizeof(struct Node));
    newNode->data = data;
    newNode->next = NULL;
     // 如果链表为空，将新节点作为头节点
    if (*head == NULL) {
        *head = newNode;
        return;
    }
     // 找到链表的最后一个节点
    struct Node* last = *head;
    while (last->next != NULL) {
        last = last->next;
    }
     // 将新节点链接到链表的最后
    last->next = newNode;
}
 // 打印链表
void printList(struct Node* node) {
    while (node != NULL) {
        printf(" %d ", node->data);
        node = node->next;
    }
    printf("\n");
}
 int main() {
    // 初始化链表为空
    struct Node* head = NULL;
     // 插入节点到链表
    insert(&head, 1);
    insert(&head, 2);
    insert(&head, 3);
    insert(&head, 4);
     // 打印链表
    printList(head);
     return 0;
}//
// Created by Administrator on 2023/7/20.
//
